對於 AWS 的使用者來說 CloudWatch 一定並不陌生
早期 CloudWatch 包含監控、Log 和 Event
約莫在 2021 年或 2022 年左右
CloudWatch Event 功能獨立出去變成現在的 EventBridge
而 CloudWatch 則專職於 Log 和指標的蒐集
CloudWatch 是 AWS 提供的全託管 Log 和指標儲存庫
AWS 可讓指標和 Log 放在儲存庫(CloudWatch)中
並有圖形化介面供使用者擷取相關資訊
早期在佈建基礎設施時
需要在額外佈署一些監控
而 AWS 提供更便利的方式
只要在 AWS 上建的基礎設施
預設就自帶基礎的監控
供使用者瀏覽查詢
對於初次管理系統的人而言
自帶指標監控是相當友善的設定
在早期也許會在系統上裝 Munim
有些人也會使用 WhatsUp Gold
在建立一個服務之前就要先準備好這些系統監控的基礎設施
對於很多要開發應用的人來說
無疑是個相當大的負擔
在某些狀況
我們無法自定義 Log 的形式
此時不好對 Log 做篩選和查詢
但是 CloudWatch Log Insights 提供客製的查詢語法(filter pattern)
可將 Log 做篩選和切割
讓 Log 查詢結果可讀性更高
對於已經解析好的 Log
可以針對符合形式的 Log 採取行動
串接 AWS Lambda 直接採取對於系統最有利的處置
甚至是串接 Open Search
及時串流 Log 資訊進行分析
根據 Log 的模式
可以反向建立指標
並針對建立的指標做監控
如:RDS 這全託管的資料庫,在做稽核的時候,就需要從 Log 中反向建立指標,去偵測 DDL 或是登入事件
AWS CloudWatch Log 提供更簡單的設定
可以設定 Log 的 Rotate 時間
如果 Log 需要永久保存
也可以設定不 Rotate
CloudWatch 提供跨區域的監控
也提供跨帳戶的監控
讓不同 BU 的使用者可以跨區跨帳戶監控
如果系統有習慣的 Dashboard 工具
或是打算自己在 EC2 中建立 Grafana
CloudWatch 和 CloudWatch Log 也可以當成 Grafana 的來源
對於不容易整合的
最終也可以將資料匯出至 S3
參考資料: